/* 
    slice() 剪切
    slice(startIndex, endIndex) 返回从startIndex开始(包括)， 到endIndex(不包括) 之间的原属组成的数组
*/
function slice(arr, startIndex, endIndex) {
    // 如果数组为空
    if (arr.length == 0) {
        return []
    }
    // 判断是否传入startIndex 没传入为0
    startIndex = startIndex || 0;
    // 判断startIndex是否大于数组长度
    if (startIndex >= arr.length || startIndex < 0) {
        return [];
    }
    // 判断是否传入startIndex 没传入为数组长度
    endIndex = endIndex || arr.length;
    if (endIndex < startIndex) {
        endIndex = arr.length;
    }
    let result = [];
    arr.forEach((item, index) => {
        if (index >= startIndex && index < endIndex) {
            result.push(item);
        }
    })
    return result;
}